package cn.mygweb.admin.modules.sys.pojo;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;

import lombok.Data;

/** 
* <p>Title: SysUser.java</p>
* <p>Description: 系统用户</p>  
* @author gxb 
* @date 2019年6月2日 
* <p>Copyright: Copyright (c) 2019</p>
* <p>Company: www.mygweb.cn</p> 
*/ 
@Table(name = "sys_user")
@Data
public class User implements Serializable{
    /**
	 * serialVersionUID
	 */
	private static final long serialVersionUID = -7045705180490241284L;

	/**
     * 主键id
     */
    @Id
    private String id;

    /**
     * 用户名
     */
    private String username;

    /**
     * 加密密码的盐
     */
    @Column(name = "pwd_salt")
    private String pwdSalt;

    /**
     * 密码
     */
    @JsonIgnore
    private String password;

    /**
     * 用于权限的“盐”
     */
    @Column(name = "auth_salt")
    @JsonIgnore
    private String authSalt;

    /**
     * 昵称
     */
    private String nickname;

    /**
     * 年龄
     */
    private Integer age;

    /**
     * 性别-0：男，1：女
     */
    private String sex;

    /**
     * 电话
     */
    private String phone;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 头像
     */
    @Column(name = "face_image")
    private String faceImage;

    /**
     * 地址
     */
    private String address;

    /**
     * 用户状态 - 0：正常，1：用户自行注销，2：禁用
     */
    private Integer status;
    
    /**
     * 注册时间
     */
    @Column(name = "regist_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale="zh", timezone="GMT+8") //Jackson包使用注解
    private Date registTime;
    
    /**
     * 最后在线时间
     */
    @Column(name = "last_online")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", locale="zh", timezone="GMT+8")
    private Date lastOnline;

    /**
     * 	最后登录IP
     */
    @Column(name = "last_login_ip")
    private String lastLoginIp;
}